Unless otherwise indicated herein, approaches described in this section are not prior art to the claims listed below and are not admitted as prior art by inclusion in this section.
In communication systems, communication channels are subject to channel noise and, thus, errors can be introduced during transmission from a source to a receiver of digital data. Accordingly, various error detection techniques as well as error correction techniques are often utilized to detect and correct errors to enable reliable delivery of digital data over unreliable communication channels. Polar codes are a type of error correction codes that are linear block error correcting codes. The construction of Polar codes is based on a multiple recursive concatenation of a short kernel code, which transforms the physical channel into virtual outer channels. As the number of recursions increases, the virtual channels tend to have either high reliability or low reliability (and hence are polarized, and data bits can be allocated to the most reliable channel(s) for reliable delivery of the data. In other words, channel polarization is an effective way to transform or polarize a communication channel into better and worse sub-channels. Moreover, by properly exploiting the better sub-channels, it is feasible to approach channel capacity of the communication channel.